Bluetooth association with simple power connection

ABSTRACT

A method and system for wirelessly coupling a computer with a peripheral device. The peripheral device is initially docked to a docking port in the computer. The computer then listens for identifiers from all peripheral devices within range of the computer, including the identifier for the peripheral device that is presently docked with the computer. The computer then instructs the docked peripheral device to stop sending its identifier. By a process of deduction, the computer is able to identify the docked peripheral device. The step of stopping the docked peripheral device from sending the peripheral device&#39;s identifier is preferably controlled by monitoring whether the computer is charging a battery in the docked peripheral device. Thus, the docked peripheral device transmits its identifier only when it is charging its battery.

BACKGROUND OF THE INVENTION

1. Technical Field

The present invention relates in general to the field of computers, andin particular to computers having wireless peripheral devices. Stillmore particularly, the present invention relates to a method and systemfor logically coupling a specific wireless peripheral device to acomputer.

2. Description of the Related Art

In an effort to make connections physically and aesthetically neater,many computer systems use wireless interfaces with peripheral devices.One popular wireless interface is known as Bluetooth®. The Bluetooth®specification is described in the “Specification of the BluetoothSystem,” published 05 Nov. 2003 by Bluetooth SIG, which is hereinincorporated by reference in its entirety.

Bluetooth® employs a physical radio channel, which is shared by a groupof devices that are synchronized to a common clock and frequency hoppingpattern. A first device, typically a computer (desktop, laptop, tablet,Personal Digital Assistant—PDA, et al.) provides a synchronizationreference, and is known as a master. All other devices (peripherals,other computers, et al.) are known as slaves. The master and slavetogether form a closely proximate (usually less than 10 meters apart)network known as a piconet, which permits radio communication betweeneach slave and the master (but not between slaves).

To establish a radio link between the master and a slave, the masterinterrogates any slave that is close enough to “hear” an interrogationsignal from the master. The slave responds with its Media Access Control(MAC) address, which identifies the slave. The user of the mastercomputer then manually selects which available slave to connect to themaster. For example, FIG. 1 illustrates a Graphical User Interface (GUI)100 showing icons for a printer, a keyboard and a mouse, all of whichare Bluetooth® enabled and are available to (and within range of) themaster. The user then double clicks the icon of each wireless peripheraldevice that she wishes to wirelessly couple for communication with themaster (computer).

Such a system as shown in FIG. 1 is adequate if the only Bluetooth®peripheral devices within radio range of the master computer are thoseperipheral devices that “belong” with the master computer. However, aproblem arises if the master computer receives responses from Bluetooth®enabled devices that are associated with another master computer,particularly if an automatic connection system is used. Furthermore,manual, static association (the common method for establishingMaster/Slave relationship) of only selected devices (such as describedin FIG. 1) is not desirable since it is cumbersome and user error-prone,since the user may not know which icon described peripheral devices“belong” to her computer. Such available wireless devices may be in anycommon proximate area, such as an adjoining cubicle, or as contemplatedin a preferred embodiment of the present invention, in a public retailestablishment.

What is needed, therefore, is a method and system that selectivelylogically links an authorized Bluetooth® enabled peripheral device withan appropriate master computer. Preferably, such a method and systemwill require minimal user intervention. In particular, what is needed isa method and system that can be used in environments in which Bluetooth®enabled devices can be interchanged and the master/slave relationshipcan be re-established simply and quickly.

SUMMARY OF THE INVENTION

The present invention is thus directed to a method and system forwirelessly coupling a computer with a peripheral device. The peripheraldevice is initially docked to a docking port in the computer. Detectingthe docking event, the computer then listens for identifiers from allperipheral devices within range of the computer, including theidentifier for the peripheral device that is presently docked with thecomputer. The computer then instructs the docked peripheral device tostop sending its identifier. By a process of deduction, the computer isable to identify the docked peripheral device. In a preferredembodiment, the docked peripheral device subsequently is wirelesslyassociated only with the computer to which that peripheral device wasinitially docked.

The step of stopping the docked peripheral device from sending theperipheral device's identifier is preferably controlled by monitoringwhether the computer is charging a battery in the docked peripheraldevice. Thus, the docked peripheral device transmits its identifier onlywhen it is charging its battery. Alternatively, a simple poweringsequence or simple secondary communication can be used to inform thedocked peripheral device to transmit its identifier.

The present invention thus allows Bluetooth® enabled devices to beinterchanged among master computers, and the master/slave relationshipsbetween computers and peripheral devices can be established andre-established simply and quickly.

The above, as well as additional purposes, features, and advantages ofthe present invention will become apparent in the following detailedwritten description.

BRIEF DESCRIPTION OF THE DRAWINGS

The novel features believed characteristic of the invention are setforth in the appended claims. The invention itself, however, as well asa preferred mode of use, further purposes and advantages thereof, willbest be understood by reference to the following detailed description ofan illustrative embodiment when read in conjunction with theaccompanying drawings, where:

FIG. 1 depicts a prior art Graphical User Interface (GUI) used tomanually couple wireless peripheral devices to a computer;

FIG. 2 a illustrates an exemplary computer system in which the presentinvention can be implemented;

FIG. 2 b depicts additional detail of a docking port in an exemplarymaster computer system;

FIGS. 3 a–b depict an authorized peripheral device docked to theexemplary master computer, with the exemplary computer being mounted ona shopping cart;

FIG. 4 illustrates the exemplary master computer with the dockedperipheral device, as well as other peripheral devices that are notauthorized to communicate with the master computer that is docked withthe authorized peripheral device; and

FIG. 5 is a flow chart of steps taken in a preferred embodiment of thepresent invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

With reference now to FIG. 2, there is depicted a block diagram of adata processing system in which a preferred embodiment of the presentinvention may be implemented. Data processing system 200 represents anexemplary hardware configuration of a target platform. Data processingsystem 200 may be, for example, one of the models of personal (e.g.,tablet) computers (or, as described below, a server) available fromInternational Business Machines Corporation of Armonk, N.Y. Dataprocessing system 200 includes a central processing unit (CPU) 202,which is connected to a system bus 208. In the exemplary embodiment,data processing system 200 includes a graphics adapter 204 alsoconnected to system bus 208, for providing user interface information toa display 206.

Also connected to system bus 208 are a system memory 210 and aninput/output (I/O) bus bridge 212. I/O bus bridge 212 couples an I/O bus214 to system bus 208, relaying and/or transforming data transactionsfrom one bus to the other. Peripheral devices such as nonvolatilestorage 216, which may be a hard disk drive, and input device 218, whichmay include a conventional mouse, a trackball, or the like, is connectedto I/O bus 214.

Data processing system 200 also includes a docking port 220, about whichadditional detail and discussion are given below in FIG. 2 b, and awireless interface 222. Wireless interface 222 is an interface thatpermits data processing system 200 to wirelessly communicate withanother data processing system, such as a server 224, as well as one ormore wireless peripheral devices 226.

Data processing system 200 also includes an IDentification SignalReceiver (IDSR) 221. IDSR 221 is a logic (hardware and/or software) thatuses wireless interface 222 to receive an identification signal fromwireless peripheral devices 226, as described in detail below.

Also included in data processing system 200 is a Peripheral DeviceLocking Logic (PDLL) 223. PDLL 223 uses an identifier received by IDSR221 from a specific wireless peripheral device 226 to establish awireless link between data process system 200 and the specific wirelessperipheral device 226, as described in further detail below. That is,PDLL 223 is capable of 1) turning a power switch 230 (shown below inFIG. 2 b) off and on, 2) starting and stopping a transmission of anidentifier from a docked wireless peripheral device 226, 3) identifyingwhich wireless peripheral device 226 is currently docked to docking port220 using a first and second list of identifiers from IDSR 221, and 4)establishing an exclusive wireless communication link between a specificwireless peripheral device 226 and the data processing system 200.

The exemplary embodiment shown in FIG. 2 a is provided solely for thepurposes of explaining the invention and those skilled in the art willrecognize that numerous variations are possible, both in form andfunction. For instance, data processing system 200 might also include acompact disk read-only memory (CD-ROM) or digital versatile disk (DVD)drive, a sound card and audio speakers, and numerous other optionalcomponents. All such variations are believed to be within the spirit andscope of the present invention. The data processing system 200 isillustrated to describe a preferred embodiment of a Bluetooth® enabledmaster computer, to which one or more Bluetooth® enabled peripheraldevices are initially docked and subsequently wirelessly connected.Furthermore, the computer architecture generally described for dataprocessing system 200 is also appropriate for use in constructing server224, except that server 224 preferably does not require an IDSR 221 or aPDLL 223, since in the preferred embodiment of the present invention thefunction of identifying and wireless connecting the master computer toauthorized peripheral devices is performed by the master computer towhich the specified peripheral is initially docked, as described below.

Referring now to FIG. 2 b, additional detail is given for docking port220 and associated power. A power supply 228, preferably within anenclosure (not shown) for data processing system 200, is coupled to apower switch 230, which electrically couples power supply 228 to aperipheral device re-charger 232 in docking port 220. When wirelessperipheral device 226 docks with docking port 220 via a connector 234,wireless peripheral device 226 is able to recharge a battery 238 that isinside (or otherwise coupled to) wireless peripheral device 226. Notethat connector 234 provides wireless peripheral device 226 with both apower connection to peripheral device re-charger 232 as well as a dataconnection to I/O bus 214.

The position of power switch 230 (either closed to electrically connectpower supply 228 with peripheral device re-charger 232 or open to breakthe connection) is detected by a power switch status detector 236, whichsends a logic signal to I/O bus 214 indicating whether power is beingsent to peripheral device re-charger 232 (and thus resulting in thebattery 238 in wireless peripheral device 226 being in the process ofbeing charged). Concurrently, wireless peripheral device 226 is able tosend a signal to I/O bus 214 informing data processing system 200 (themaster Bluetooth® computer) that the wireless peripheral device 226 iscoupled to docking port 220 and is charging (or at least capable ofcharging) battery 238. That is, for the purposes of the logic describedin the present invention, the master Bluetooth® computer can assume thatbattery 238 is being charged whenever wireless peripheral device 226 isdocked (via connector 234) to docking port 220 and power switch 230 isclosed, even if battery 238 is not actually being charged (due to beingfully charged, being defective, being removed from wireless peripheraldevice 226, etc.).

Referring now to FIGS. 3 a–b, an exemplary use of data processing system200 is shown. Data processing system 200 is depicted as a tabletcomputer 300, which is master Bluetooth® enabled computing device thatis attached to a shopping cart 302, preferably in a manner that issemi-fixed (i.e., requiring tools to remove tablet computer 300 fromshopping cart 302, in order to prevent theft of tablet computer 300).Peripheral device 226 is depicted as a scanner 326, which is docked totablet computer 300 via a docking port 320. As seen in the top view ofFIG. 3 b, tablet computer 300 has an active viewing screen 304, whichdisplays a Graphical User Interface (GUI) for displaying data, as wellas for receiving inputs (preferably via a touch-screen capability) intotablet computer 300.

An exemplary use of tablet computer 300 may be in a retailestablishment. As a shopper places items into shopping cart 302, theshopper removes the hand-held wireless scanner 326 from docking port320, and uses the scanner 326 to read a Universal Product Code (UPC)barcode on the item. The tablet computer 300 stores all items that havebeen scanned and placed in the shopping cart 302 into a list. When thecustomer checks out, the checker simply downloads the list (with prices)to conclude a shopping transaction. While this example of the use ofdata processing system 200 (e.g., tablet computer 300) should beconsidered useful in understanding an exemplary environment in which thepresent invention operates, it is understood that the scope of theclaims is to extend to all environments in which there is a need tologically associate a specific wireless peripheral device to a dataprocessing system.

Referring now to FIG. 4, there is illustrated an environment in whichmultiple wireless peripheral devices are within wireless range of aspecific tablet computer 300-1. However, the only scanner that isintended to communicate with tablet computer 300-1 is scanner 326-1,which is shown as coupled to tablet computer 300 via docking port 320-1,but which will be capable of exclusive wireless communication withtablet computer 300-1 when removed from docking port 320-1. Thus, itwould be problematic for tablet computer 300 to be in wirelesscommunication with other peripheral devices such as scanners 326-2,3,4,whether or not these scanners are currently docked to a tablet computer300. That is, tablet computer 300 should not be able to wirelesslycommunicate with scanners 326-3,4 (undocked) or scanner 326-2 (currentlydocked to tablet computer 300-2), but should be able to wirelesslycommunicate with only scanner 326-1. This exclusive communicationbetween tablet computer 300-1 and scanner 326-1 is accomplished by thepresent invention as described herein.

To ensure that scanner 326-1 is the only scanner that can wirelesslycommunicate with tablet computer 300-1 (such wireless communicationpreferably being enabled by the Bluetooth® standard incorporated byreference above), the present invention follows the exemplary stepsshown in FIG. 5. Referring therefore to FIG. 5, after initiator block500, Computer1 detects a docked Scanner1 and determines that Computer1needs to be associated (auto-linked) with Scanner1 (block 502). Next,tablet Computer1 (300-1) sends power to a peripheral device re-charger(such as peripheral device re-charger 232 shown in FIG. 2 b), asdescribed in block 504. This power is sent by switching on (closing)power switch 230, which switching is detected by power switch statusdetector 236 (see FIG. 2 b). When power switch 230 is closed (power issent to peripheral device re-charger 232), two events occur. One eventis that battery 236 starts charging. Another event is that power switchstatus detector 236 lets CPU 202, or else another dedicated logic (notshown), send to Scanner1 (326-1) a signal, via docking port 220, thatinstructs Scanner1 (326-1) to start broadcasting Scanner1's (326-1)Media Access Control (MAC) address along with the rest of Scanner1'sBluetooth® registration information.

Besides receiving the MAC address and other Bluetooth® registrationinformation from Scanner1, Computer1 is also receiving this sameinformation from all other scanners within range (e.g., scanners326-2,3,4 shown in FIG. 4), preferably using the IDSR 221 shown in FIG.2 a. Computer1 uses this information to generate a first listidentifying all scanners currently within range (block 506). This listthus includes identifiers for scanners 326-1,2,3,4 (shown as the set of{1,2,3,4}).

Next, Computer1 sends a power sequence to Scanner1, which causesScanner1 to stop broadcasting its own physical address (MAC address) andother Bluetooth® registration information (block 508). This powersequence is preferably an instruction to open power switch 230, thusturning off power to peripheral device re-charger 232 (see FIG. 2 b).Alternatively, this power sequence may be any variation in power beingsupplied to peripheral device re-charger 232. In another alternativeembodiment, this power sequence may be a signal to Scanner1 to stoprecharging its battery (i.e., battery 236 shown in FIG. 2 b), throughthe use of logic within Scanner1 (not shown in FIG. 2 b), even thoughpower may still be available to peripheral device re-charger 232 (i.e.,power switch 230 is closed).

Once Scanner1 stops sending its own identification signal, thenComputer1 generates of second list of identifiers for all Scannerswithin range that are still broadcasting their identificationinformation (block 510). With reference again to FIG. 2 b, then,Scanners2–4 (326-2,3,4) are now listed in the second list (shown as theset {2,3,4}).

Computer1 then deduces, preferably using the PDLL 223 shown in FIG. 2 a,which scanner is the docked Scanner1 by subtracting the second list fromthe first list. That is, the first set (list) containing {1,2,3,4} minusthe second set (list) containing {2,3,4} equals the single element setcontaining {1}. Thus, by deduction, Computer1 knows that Scanner1 iscoupled to Computer1 (block 512). Computer1 then automaticallyestablishes an exclusive Bluetooth® wireless link with Scanner1 (block514), preferably using the PDLL 223 illustrated in FIG. 2 a. That is,code and logic (preferably CPU 202) in Computer1 automatically establishan exclusive link between Computer1 and Scanner1 such that Scanner1 canonly communicate with Computer1, and the process ends (terminator block516). Now that Scanner1 is exclusively linked with Computer1, Scanner1can wirelessly communicate only with Computer1, whether Scanner1 isdocked or undocked with Computer1.

Note that the steps described above for receiving from the IDSR thefirst list of all peripheral devices within range of the IDSR, stoppingthe transmission of the IDentification (ID) signal form the dockedperipheral device, and the subsequent receiving of the second list ofperipheral devices within range of the IDSR, such that a determinationcan be made as to which peripheral device was docked to the mastercomputer, are preferably performed by PDLL 223 described above.

If additional peripheral devices are to be exclusively wirelessly linkedto a specific data processing system 200 (such as but not limited to atablet computer such as table computer 300), then the steps shown inFIG. 5 are reiterated for each desired peripheral device.

Note that there may be occasions in which more than one device may stoptransmitting its identification number, as would occur when twocomputers are attempting to automatically link with different scannersat the same time. For example, consider the set {1, 2, 3, 4} describedabove. Assume that {1} identifies the Scanner1 that is to be auto-linkedwith Computer1 as described in FIG. 5. However, now assume that {2}identifies a Scanner2 (not shown) that is to be auto-linked with aComputer2 (also not shown). If Computer2 uses the present invention atthe same time as Computer1, then the remaining set shown in block 510would include only {3, 4}. Thus, Computer1 would become confused sincetwo scanners (Scanner1 and Scanner2) appear to want to auto-link withComputer1. When this rare situation occurs, the Computer1 waits apredetermined (or random) “backoff period” before attempting toassociate again with Scanner1. That is, Computer1 waits a certain amountof time to allow Computer2 to auto-link with Scanner2 (using the abovedescribed steps), and then Computer1 auto-links with Scanner1 asdescribed above.

It should be understood that at least some aspects of the presentinvention may alternatively be implemented in a program product.Programs defining functions on the present invention can be delivered toa data storage system or a computer system via a variety ofsignal-bearing media, which include, without limitation, non-writablestorage media (e.g., CD-ROM), writable storage media (e.g., a floppydiskette, hard disk drive, read/write CD ROM, optical media), andcommunication media, such as computer and telephone networks includingEthernet. It should be understood, therefore in such signal-bearingmedia when carrying or encoding computer readable instructions thatdirect method functions in the present invention, represent alternativeembodiments of the present invention. Further, it is understood that thepresent invention may be implemented by a system having means in theform of hardware, software, or a combination of software and hardware asdescribed herein or their equivalent.

The present invention thus provides a simple method and system fordynamically wirelessly coupling a computer to a wireless peripheraldevice. Preferably, the steps of instructing Scanner1 to start and stopbroadcasting its identification information are initiated by inputtingthese commands onto active viewing screen 304-1, as seen in themagnified view of active viewing screen 304-1 shown in FIG. 4.Furthermore, the step of deducing which peripheral device is Scanner1and auto-linking it to Computer1 may be accomplished automatically or byclicking (by stylus pen or touch-screen) the appropriate instructionshown in FIG. 4 on active viewing screen 304-1.

While the invention has been particularly shown and described withreference to a preferred embodiment, it will be understood by thoseskilled in the art that various changes in form and detail may be madetherein without departing from the spirit and scope of the invention.For example, while detection of the charging status of battery 238 hasbeen through the use of power switch status detector 236, any simplesignaling mechanism may be used to indicate that battery 238 is beingcharged via docking port 220.

1. A system comprising: a wireless peripheral device; and a computersystem composed of: a power supply; a docking station; a power switchthat couples the power supply to the docking station; an IDentificationSignal Receiver (IDSR); and a Peripheral Device Locking Logic (PDLL),wherein the wireless peripheral device is a docked peripheral devicethat is docked in the docking station, and wherein the PDLL initializescommunication only with the docked peripheral device, wherein the PDLLincludes logic to: receive from the IDSR a first list of all peripheraldevices within range of the IDSR, stop a transmission of anIDentification (ID) signal from the docked peripheral device, andsubsequently receive from the IDSR a second list of peripheral deviceswithin range of the IDSR, wherein the second list of peripheral devicesexcludes the ID signal from the docked peripheral device, wherein thePDLL determines the ID of the docked peripheral by contrasting the firstand second lists.
 2. The computer system of claim 1, wherein the powersupply provides a battery recharging supply to a battery in theperipheral device that is docked in the docking station, and wherein thetransmission of the ID signal from the docked peripheral device isstopped in response to the power switch turning off the batteryrecharging supply to the docking station.
 3. The computer system ofclaim 2, further comprising: a switch sensor associated with the powerswitch, wherein the switch sensor signals whether or not the batteryrecharging supply is coupled to the docking station.
 4. The computersystem of claim 3, wherein the peripheral device is capable ofcommunicating with the computer system using a short-range wirelesscommunication system.
 5. The computer system of claim 4, wherein theshort-range wireless communication system is a Bluetooth® system.
 6. Thecomputer system of claim 2, wherein the PDLL includes a subtractionlogic that logically subtracts the contents of the second list from thecontents of the first list.
 7. A method comprising: docking a wirelessperipheral device to a computer; sending a first signal to the dockedwireless peripheral device to transmit a docked device identificationsignal from the docked wireless peripheral device; receiving, at thecomputer, identification signals from all peripheral devices withinrange of the computer; generating a first list of all of the peripheraldevices based on the received identification signals; sending a secondsignal to the docked wireless device to cease transmitting the dockedwireless device's identification signal; receiving, at the computer,identification signals from remaining peripheral devices that do notinclude the docked peripheral device; generating a second list of theremaining peripheral devices; deducing that the identifier for thedocked wireless peripheral device is an identifier found in the firstlist but missing in the second list; and subsequently establishing anexclusive wireless connection with the docked wireless peripheral devicewhose identity was deduced in the deducing step.
 8. The method of claim7, wherein the transmission of the identification signal from the dockedperipheral device is stopped in response to a turning off of a power toa battery re-charger for a battery in the docked peripheral device. 9.The method of claim 7, wherein the peripheral device is capable ofcommunicating with the computer system using a short-range wirelesscommunication system.
 10. The method of claim 7, wherein the short-rangewireless communication system is a Bluetooth® system.
 11. The method ofclaim 7, wherein the deducing step is performed by logically subtractingthe contents of the second list from the contents of the first list. 12.The method of claim 7, wherein the computer system is a tablet computermounted on a shopping cart.
 13. The method of claim 12, wherein theperipheral device is a scanner.
 14. A computer program product, residingon a computer usable medium and capable of being executed on a computer,comprising: program code for docking a wireless peripheral device to acomputer; program code for sending a first signal to the docked wirelessperipheral device to transmit a docked device identification signal fromthe docked wireless peripheral device; program code for receiving, atthe computer, identification signals from all peripheral devices withinrange of the computer; program code for generating a first list of allof the peripheral devices based on the received identification signals;program code for sending a second signal to the docked wireless deviceto cease transmitting the docked wireless device's identificationsignal; program code for receiving, at the computer, identificationsignals from remaining peripheral devices that do not include the dockedperipheral device; program code for generating a second list of theremaining peripheral devices; program code for deducing that theidentifier for the docked wireless peripheral device is an identifierfound in the first list but missing in the second list; and program codefor subsequently establishing an exclusive wireless connection with thedocked wireless peripheral device.
 15. The computer program product ofclaim 14, wherein the transmission of the identification signal from thedocked peripheral device is stopped in response to a turning off of apower to a battery re-charger for a battery in the docked peripheraldevice.
 16. The computer program product of claim 14, wherein theperipheral device is capable of communicating with the computer systemusing a short-range wireless communication system.
 17. The computerprogram product of claim 16, wherein the short-range wirelesscommunication system is a Bluetooth® system.
 18. The computer programproduct of claim 14, wherein the deducing step is performed by logicallysubtracting the contents of the second list from the contents of thefirst list.
 19. The computer program product of claim 14, wherein thecomputer system is a tablet computer mounted on a shopping cart, andwherein the peripheral device is a scanner.